/*
 *  在Node中有一个全局变量global，它的作用和网页中的window类似
 *      - 在全局中创建的变量都会作为global的属性保存
 *      - 在全局中创建的函数都会作为global的方法保存
 * 
 * 
 *  模块中的代码都是包装在下面的函数中执行的，并且在函数执行时，同时传递了5个实参
 *  		function (exports, require, module, __filename, __dirname) {
 *        
 *      }
 *
 *  
 *  exports
 *	   	- 该对象用来将变量或函数暴露到外部

 *  require
 *      - 函数，用来引入外部的模块
 *
 *  module
 *      - module代表的是当前模块本身
 *      - exports就是module的属性
 *      - 既可以使用 exports 导出，也可以使用module.exports导出
 *
 *   __filename
 *      C:\Users\lilichao\WebstormProjects\class0705\01.node\04.module.js
 *      - 当前模块的完整路径
 *
 *  __dirname
 *      C:\Users\lilichao\WebstormProjects\class0705\01.node
 *      - 当前模块所在文件夹的完整路径
 * 
 * 
 * 
 * 
 */

// a = 100; // 函数内不加var的变量会变成全局变量
// console.log(global.a);

// console.log(arguments.callee + ""); // function，说明每个JS文件是运行在函数中的

console.log(module.exports === exports);
console.log(__filename);
console.log(__dirname);